Vector graphics are typically based on geometric descriptions of shapes annotated with rendering attributes that control the appearance of the resulting graphics. For example, a geometric shape can be annotated with a reddish color to fill the interior area, and a bluish outline of 3 mm thick can be drawn along the boundary of the shape. Simple rendering attributes like these are generally effective only in creating bold designs. To introduce richness, one may increase the complexity of the composition with more graphics objects and more complex shapes. Another method to introduce richness is to augment the rendering attributes with information that allows variations to be introduced or adjusted in a controllable way. A gradient vector is one example of such variations that allow multiple colors and/or shades to be applied (radially, linearly, conically, etc.) across a shape. However, the kind of gradation that can be specified with a gradient vector is relatively simplistic and limited. More general ways to specify arbitrarily complex gradations are desirable.